Improve a warning Always set the error when returning NULL. (#440982,
authorMatthias Clasen <mclasen@redhat.com>
Fri, 25 May 2007 15:31:28 +0000 (15:31 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Fri, 25 May 2007 15:31:28 +0000 (15:31 +0000)
2007-05-25  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkiconfactory.c: Improve a warning
        * gtk/gtkicontheme.c (gtk_icon_info_load_icon): Always
        set the error when returning NULL.  (#440982, Carlos Garcia
        Campos)

svn path=/trunk/; revision=17912

ChangeLog
gtk/gtkiconfactory.c
gtk/gtkicontheme.c

index 8bf2f15ff21bcf9a0effaa8e2d7dcca6732b96b1..6993637c657c7f3c7f333be7e2a446f4acdce235 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2007-05-25  Matthias Clasen  <mclasen@redhat.com>
+
+       * gtk/gtkiconfactory.c: Improve a warning
+       * gtk/gtkicontheme.c (gtk_icon_info_load_icon): Always
+       set the error when returning NULL.  (#440982, Carlos Garcia
+       Campos)
+
 2007-05-25  Michael Natterer  <mitch@imendio.com>
 
        Merge fix from maemo-gtk:
index f80a5d58b43a04fb90def66fa0843771c22ecfe8..d581d605b2e8144d26afa885d63830172e7e3bb2 100644 (file)
@@ -1467,7 +1467,8 @@ render_icon_name_pixbuf (GtkIconSource    *icon_source,
 
   if (!tmp_pixbuf)
     {
-      g_warning ("Error loading theme icon for stock: %s", error->message);
+      g_warning ("Error loading theme icon '%s' for stock: %s", 
+                 icon_source->source.icon_name, error->message);
       g_error_free (error);
       return NULL;
     }
index 2aa1c59e5c1949aa925f0151d0890926cfabdd18..d6accc94fe736396b50e0e69d643c12168400144 100644 (file)
@@ -2905,12 +2905,17 @@ gtk_icon_info_load_icon (GtkIconInfo *icon_info,
   g_return_val_if_fail (icon_info != NULL, NULL);
   g_return_val_if_fail (error == NULL || *error == NULL, NULL);
 
-  icon_info_ensure_scale_and_pixbuf (icon_info, FALSE);
-
-  if (icon_info->load_error)
+  if (!icon_info_ensure_scale_and_pixbuf (icon_info, FALSE))
     {
-      g_propagate_error (error, icon_info->load_error);
-      return NULL;
+      if (icon_info->load_error)
+        g_propagate_error (error, icon_info->load_error);
+      else
+        g_set_error (error,  
+                     GTK_ICON_THEME_ERROR,  
+                     GTK_ICON_THEME_NOT_FOUND,
+                     _("Failed to load icon"));
+     return NULL;
     }
 
   return g_object_ref (icon_info->pixbuf);